home *** CD-ROM | disk | FTP | other *** search
- #import <appkit/appkit.h>
- #import <appkit/View.h>
- #import "StarShipProtocol.h"
-
-
- #define NSTARS (200)
- #define STARSPERIT (100)
-
- typedef struct STAR {
- float theta; // angle
- float distance;
- float delta; // change in distance
- float ddelta; // change in delta, a constant multiplier
- int changemode;
- char c;
- float changepoint[6];
-
- NXPoint r1, r2;
- NXPoint *draw;
- NXPoint *erase;
-
- } STAR;
-
- @interface NewSpaceView:View
- {
- STAR stars[NSTARS];
- id starShip;
- id bodyController;
- int nstars;
- int radius; // min radius of this view
- float stopDelta;
-
-
- NXRect smallScreenRect; //for small screen info
- BOOL firstState;
- float lightColor;
- float l_x_lightMin;
- float r_x_lightMax;
- float r_x_lightStart;
- float l_x_lightStart;
- float lightInc;
-
- struct screenLights{
- float l_x_pos;
- float r_x_pos;
- float y_pos;
- }lights;
-
- BOOL stopped,stopping;
- BOOL hidden; //whether stars are hidden or not - disables stars
- float speed;
- float currentSpeed;
-
- int lightLimit; // time to start lights over
- int lightChangeTime;
- int screenChangeTime;
- int screenResizeLimit;
- int screenResizeDir; // 0 = bigger , 1 = smaller
- NXPoint b[NSTARS];
- NXPoint bOffsets[NSTARS];
- char bc [NSTARS+1];
-
- NXPoint w[NSTARS];
- NXPoint wOffsets[NSTARS];
- char wc [NSTARS+1];
-
- NXRect voidRect; //avoid the void!
- Storage *avoidStorage;
- int toggle;
- NXSize oldSize;
- float starSpeed;
-
- }
-
- - convertToXY:(STAR *)p;
- - oneStep;
- - (BOOL) allowBStars:(const STAR *)p;
- - (BOOL) allowWStars:(const STAR *)p;
- - drawSelf:(const NXRect *)rects :(int)rectCount;
- - sizeTo:(NXCoord)width :(NXCoord)height;
- - addStar;
- - replaceStarAt:(int)index;
- - setRadius;
- - (const char *)windowTitle;
- - didLockFocus;
- - (BOOL)useBufferedWindow;
- - setSmallScreenRect:(const NXRect *)newRect;
- - setStarShipOutlet:(id)outlet;
- - setBodyControllerOutlet:(id)outlet;
- - drawScreen;
- - drawScreenLights;
- - stopStars; //gradual stop
- - startStars;
- - setStarsStopped; //instant stop
- - (BOOL)isStopped;
- - (BOOL)isStopping;
-
- - setStarSpeed:sender;
-
-
- - (BOOL)ignoreMouseMovement;
- - inspector:sender;
- - inspectorWillBeRemoved;
- - inspectorInstalled;
- @end
-
-
- @interface View(nonretainedFillMethod)
- - fillBoundsWithBlack;
- @end
-